Moodle Plugins directory: plugNmeet | Moodle.org
plugNmeet
Bring Your Moodle Classroom to Life
Bring a powerful, open-source virtual classroom directly into your Moodle courses. The plugNmeet plugin adds a fully-featured video conferencing activity, allowing you to host live online classes, webinars, and meetings without ever leaving your Moodle site. Best of all, the classroom interface is fully customizable to match your school's branding.
Your classroom is loaded directly within Moodle for a seamless, native experience—no redirects to third-party websites.
![]() |
|
![]() |
![]() |
How It Works
This plugin requires a running plugNmeet server. As a free and open-source project, you have two great options:
- Self-Host: Create your own server for maximum control by following the official installation instructions.
- Use the Cloud: Get started in minutes with a ready-to-use plugNmeet cloud subscription.
Note: The plugin includes pre-configured demo credentials to help you test its features immediately. This demo server is a shared resource and is not intended for production use as it can be unreliable. For any important meetings, we strongly recommend using one of the options above to ensure a stable and professional experience for you and your users.
Powerful Features for Modern Online Teaching
Room Creation & Management
- Course-Integrated Rooms: Add a web conferencing session by simply adding a 'plugNmeet' activity to your course.
- Customizable welcome message: Greet participants with a custom message when they join.
- Set participant limits: Control the maximum number of users in a session.
- Scheduling & Calendar Integration: Set "Available from" and "Available until" dates for your rooms. When you set an "Available from" date, a new event is automatically added to the Moodle calendar, making it easy for students and teachers to see upcoming sessions.
- Guest access: Allow external users to join sessions with a secure, shareable link.
- Moderator control: Require a moderator to join before the session can start.
In-Room Features
- Audio & Video: High-quality, real-time audio and video communication.
- Screen Sharing: Share your entire screen, an application window, or a browser tab.
- Interactive Whiteboard: Collaborate with students using the built-in whiteboard.
- Shared Notepad: Work on documents together in real-time.
- Chat: Public and private chat with file upload capabilities.
- Polls: Engage your audience and gather feedback with live polls.
- Breakout Rooms: Split participants into smaller groups for focused discussions.
- Virtual Backgrounds: Allow users to customize their video background.
- External Media Player: Play external media, such as YouTube videos, for all participants.
- Waiting Room: Control who enters the session with a waiting room.
AI-Powered Insights & Features
*Note: These features depend on the AI services being enabled and configured on your plugNmeet server.
- Live Transcription: Get real-time, speaker-identified transcriptions of your sessions.
- Transcription Translation: Allow participants to translate live transcriptions into their preferred language.
- Speech Synthesis: Have transcriptions read aloud during the session.
- Live Chat Translation: Enable real-time translation of chat messages.
- AI-Assisted Chat: Interact with an AI assistant directly in the chat for queries and support.
- AI Meeting Summarization: Automatically generate and download summaries of your meetings.
Recording & Broadcasting
*Note: Cloud recording and live broadcasting capabilities must be enabled on your plugNmeet server.
- Cloud Recording & Management: Record sessions to the cloud. After the session, teachers can easily manage these recordings from the activity page—choose to make them visible to students, download them for offline use, or keep them hidden.
- Live Broadcasting (RTMP): Stream your sessions live to a wider audience via platforms like YouTube or Facebook.
- Local Recording: Allow moderators (teachers) to record the session and save the file directly to their own computer.
- Auto-Start Recording: Automatically begin a cloud recording as soon as the session starts.
Security & Privacy
- End-to-End Encryption (E2EE): Secure your sessions with end-to-end encryption. Learn more.
- Default Lock Settings: Configure default lock settings for microphone, webcam, screen sharing, and more.
- Role-based permissions: Control who can view and manage sessions, recordings, and reports.
Analytics, Reports & Moodle Integration
- Cumulative Attendance Reporting: Go beyond single-session reports. The plugin provides a consolidated attendance view for each Moodle activity, summarizing a student's total participation (time attended, etc.) across all sessions held within that activity.
- Advanced Completion Tracking: Leverage Moodle's activity completion system like never before. The plugin adds custom rules that track cumulative user engagement across all sessions in an activity. Mark activities complete based on:
- Total minutes attended
- Raised hand at least once
- Sent at least one chat message
- Enabled webcam at least once
- Total webcam duration (in minutes)
- Enabled microphone at least once
- Total microphone duration (in minutes)
- Total talk duration (in minutes)
- Voted in a poll
- Annotated on the whiteboard
- Artifact Management in Moodle: Access and manage session-generated files directly from the Moodle activity page. This includes AI-generated summaries, transcription files, token usage, cost and detailed per-session analytics reports, all governed by Moodle's roles and permissions.
Branding & Technical Administration
- 100% White-Label Experience: Use the
localclient load mode to deliver a seamless, native experience. The classroom loads directly within your Moodle layout—no redirects, no third-party branding. To your users, it feels like just another page in your Moodle site, but behind the scenes, plugNmeet is powering everything. - Deep Branding & Customization: When using the local client, you have full control over the classroom's appearance. Customize it with your own logo, colors, background image, and even a custom CSS file to perfectly match your school's branding.
- Global Settings: Configure default settings for all rooms from the Moodle admin panel.
- Role-Based Permissions: Granular control over who can manage sessions, view recordings, and access reports.
- Webhook & Events API: The plugin uses webhooks to receive real-time events from the plugNmeet server (like room creation, participant joins, new recordings, etc.). These are then immediately re-broadcast as standard Moodle events. This allows other Moodle plugins and custom scripts to easily hook into plugNmeet's events for further customization and integration.
Configuration
Please follow our step-by-step guide to configure the plugin: Moodle Integration Guide
Frequently Asked Questions
- How do I add a virtual classroom to my course?
The plugin adds a new "plugNmeet" activity type to Moodle. Simply turn editing on in your course, click "Add an activity or resource," and select plugNmeet. You can configure all the room settings, like the welcome message or enabling recordings, right from the activity settings page.
- Do I need a separate server for this to work?
Yes. This plugin connects your Moodle site to a plugNmeet server, which handles all the demanding video and audio processing. This ensures your Moodle site's performance remains fast, even during large classes. You have the choice to self-host the open-source server for free or use our convenient plugNmeet cloud service.
- How do students view class recordings?
If you enable recording for a session, the processed MP4 video will be generated after the class ends. This gives teachers and administrators full control over the recording. You can review it first and then choose to make it visible to students, keep it hidden, or download it for other uses.
- How is this different from Moodle's default BigBlueButton integration?
PlugNmeet is built on a more modern and lightweight architecture. This generally results in better performance, simpler server maintenance, and offers key advantages like generating a simple, single MP4 file for recordings and a fully scalable design.
- Can I restrict a live class to a specific group of students?
Yes. Because plugNmeet works as a standard Moodle activity, you can use Moodle's built-in "Restrict access" settings to control exactly which students, groups, or groupings can see and join the live session.
- Can we host the server on our own on-premises infrastructure?
Absolutely. This is one of plugNmeet's core strengths. The open-source plugNmeet server can be installed on your own on-premises hardware or in a private cloud. This means all sensitive data—including student information, chat logs, and class recordings—never leaves your network. This is the ideal solution for universities and schools that need to comply with strict data privacy regulations (like GDPR or FERPA) or wish to run the service exclusively within a private campus network.
- Why can't my students or teachers connect their cameras?
The most common reason is that your Moodle site is not running on a secure HTTPS connection. For privacy reasons, all modern web browsers require a secure `https://` connection to allow a website to access a user's camera and microphone. Please ensure your Moodle site has a valid SSL certificate installed.
Help Us Translate
Please help us translate this plugin into your language! You can contribute directly on Crowdin. If your language is missing, open an issue on GitHub and we will add it.



https://github.com/mynaparrot/moodle-mod_plugnmeet/issues
Recognizing microphone is browser related. Latest version of Google Chrome or Firefox browser need to use.
I have translated the plugin into Ukrainian however when the online session begins there is no such option to choose the Ukrainian language. I understand there have to be changes on the part of the server right?
Добрый день, все хорошо работало и тут, началось такое....
1 проверил в разных браузерах
2 переустановил
не работает
3 установил другой аналогичный плагин, он хуже, но работает
proto: (line 1:895): unknown field "speech_to_text_translation_features"
any idea?
thank you so much.